<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>

</body>
<script>
    // 1. 将一个数组［1，2，3，4，5］转换成字符串1-2-3-4-5
    var arr1 = [1, 2, 3, 4, 5];
    var str = arr1.join('-');
    console.log(str);

    // 2. 删除数组 arr 第一个元素,不要直接修改数组 arr,得到删除后的新数组。
    function shan1(arr) {
        arr.shift();
        return arr;
    }

    // 3.!!!!!用于过滤一个数组内重复的元素（数组去重），返回去重之后的数组。
    var arr = [1, 9, 8, 8, 7, 2, 5, 3, 3, 3, 2, 3, 1, 4, 5, 444, 55, 22];
    function noRepeat(arr) {
        //定义一个新的临时数组 
        var newArr = [];
        //遍历当前数组 
        for (var i = 0; i < arr.length; i++) {
            //如果当前数组的第i已经保存进了临时数组，那么跳过，
            //否则把当前项push到临时数组里面 
            if (newArr.indexOf(arr[i]) == -1) {  //indexOf() 判断数组中有没有字符串值，如果没有则返回 -1 
                newArr.push(arr[i]);
            }
        }
        return newArr
    }
    console.log(noRepeat(arr));

    // 6. 用于合并两个数组，并且合并之后的数组中没有重复的元素。
    var arr3 = [1, 2, 3, 4, 5];
    var arr4 = [7, 8, 9, 4, 5];
    arr3.forEach(function (e) {
        arr4.push(e);
    });
    console.log(noRepeat(arr4));

    // 7.找到在第一个数组array1中出现，而在第二个数组array2中没有出现的数字。
    var arr5 = [2, 44, 8, 23, 13, 5]
    var arr6 = [2, 64, 38, 73, 13, 5]
    function alone(arr1, arr2) {
        //定义一个新的临时数组 
        var newArr = [];
        //遍历当前数组 
        for (var i = 0; i < arr1.length; i++) {
            //如果当前数组的第i已经保存进了临时数组，那么跳过，
            //否则把当前项push到临时数组里面 
            if (arr2.indexOf(arr1[i]) == -1) {  //indexOf() 判断数组中有没有字符串值，如果没有则返回 -1 
                newArr.push(arr1[i]);
            }
        }
        return newArr;
    }
    console.log(alone(arr5, arr6));
</script>

</html>